<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
<head>
  <link href="https://gmpg.org/xfn/11" rel="profile">
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta name="generator" content="Hugo 0.68.3" />

  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <title>第二篇文章 &middot; 我的博客</title>
  <meta name="description" content="" />

  
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/print.css" media="print">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/poole.css">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/syntax.css">
  <link type="text/css" rel="stylesheet" href="/my_technology_blog/css/hyde.css">
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Abril+Fatface|PT+Sans:400,400i,700">


  
  <link rel="apple-touch-icon-precomposed" sizes="144x144" href="/apple-touch-icon-144-precomposed.png">
  <link rel="shortcut icon" href="/favicon.png">

  
  
</head>

  <body class="theme-base-0self ">
  <aside class="sidebar">
  <div class="container sidebar-sticky">
    <div class="sidebar-about">
      <a href="/my_technology_blog/"><h1>我的博客</h1></a>
      <p class="lead">
       这里是田帅康的个人博客 
      </p>
    </div>

    <nav>
      <ul class="sidebar-nav">
        <li><a href="/my_technology_blog/">Home</a> </li>
        
      </ul>
    </nav>

    <p>&copy; 2020. All rights reserved. </p>
  </div>
</aside>

    <main class="content container">
    <div class="post">
  <h1>第二篇文章</h1>
  <time datetime=2002-04-02T00:00:00Z class="post-date">Tue, Apr 2, 2002</time>
  <h2 id="序列化器">序列化器</h2>
<p>首先安装DRF</p>
<pre><code>pip install djangorestframework

# DRF是以Django扩展应用的方式提供的，所以我们可以直接利用已有的Django环境而无需从新创建。
#（若没有Django环境，需要先创建环境安装Django）
# DRF需要以下依赖：
# Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6)
# Django (1.10, 1.11, 2.0)
</code></pre><p>在django项目中注册rest_framework应用
在settings.py的INSTALLED_APPS中添加&rsquo;rest_framework&rsquo;</p>
<pre><code>INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'mdapp',  # 子app
    'rest_framework', #序列化
]
</code></pre><h3 id="django中配置serializer序列化器">django中配置serializer序列化器</h3>
<pre><code>#序列化导包
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import serializers
</code></pre><h3 id="redis设置过期时间">redis设置过期时间</h3>
<p>同一个ip一个时间点只能点击一次</p>
<pre><code># 导入redis
import redis
# 建立redis连接
r = redis.Redis(host='localhost')


#本ip一小时添加一次浏览量
class showpl(APIView):
	def get(self, request):
		newsid = request.GET.get('newsid')
		#判断
		if 'HTTP_X_FORWARDED_FOR' in request.META:
            #第一种 获取客户端ip
			ip = request.META.get('HTTP_X_FORWARDED_FOR')
		else:
             #第二种 获取客户端ip
			ip = request.META.get('REMOTE_ADDR')

		#获取redis里面ip
		print(r.get(ip))
        #判断redis里面是否有这个ip
		if r.get(ip) == None:
			news = News.objects.filter(pk=newsid).first()
			news.total_views += 1
			news.save()

			# 对用户ip进行存储
			r.set(ip, ip)
			# 设置超时时间
			r.expire(ip, 3600)
			print(r.get(ip))
		else:
			pass
</code></pre><h2 id="售前工程师应具备的素质">售前工程师应具备的素质</h2>
<h3 id="售前人员要求具备一个技术人员和销售人员两方面的素质具体如下">售前人员要求具备一个技术人员和销售人员两方面的素质，具体如下：</h3>
<p>●具有比较全面技术专业知识。熟悉当前IT的技术发展方向。</p>
<p>●熟悉自己的产品、熟悉本行业的业务、对本公司的开发能力、技术优势、劣势有比较清楚的认识。</p>
<p>●熟悉本行业的技术、产品动向、发展方向，了解同类产品及其竞争对手的情况和特点。</p>
<p>●能熟练使用文本和图形编辑器进行方案、标书的编写。</p>
<p>●熟悉项目招投标的一般程序。</p>
<p>●善于交流，有良好的沟通能力和技巧。</p>
<h3 id="主要负责">主要负责：</h3>
<p>1、编写技术方案文档，负责对里面的内容进行校对。</p>
<p>2、对方案的配置负责，包括价格及性能。</p>
<p>3、参与招投标文档的编写，负责里面的招标条款做应答。</p>
<p>4、对客户进行产品及方案的讲解及澄清。</p>
<p>5、研究竞争对手的产品、解决方案及商务特点，做到知己知彼。</p>
<p>6、学习理解公司的最新技术、产品，对销售人员、客户进行培训。</p>
<h3 id="要求会使用">要求会使用：</h3>
<p>visio,uml,rose等工具，word要用的很熟练</p>

</div>


    </main>

    
      
    
  </body>
</html>
